This invention relates to high-speed data transmission over band-limited channels, such as telephone lines.
Modulation systems for such channels commonly use two-dimensional carrier modulation, generically called double-sideband-quadrature-carrier (DSB-QC) modulation. Such modulation systems are discussed, for example, in U.S. Pat. No. 3,887,768 (Forney/Gallager), incorporated herein by reference, which also shows an implementation of such a system.
Conventional DSB-QC systems are used to send an integer number (N) of bits in each modulation interval of T seconds in a nominal bandwidth of 1/T Hz. For example, some telephone line modems send 4 bits per modulation interval of 1/2400 sec. within a nominal bandwidth of 2400 Hz, thus achieving a 9600 bits per second (bps) data transmission rate. Modems for sending 6 bits per modulation interval to achieve 14,400 bps in a nominal 2400 Hz bandwidth are also available.
Such DSB-QC systems use signal constellations of 2.sup.N signals for sending N bits per modulation interval. A family of such constellations with signals arranged on a regular rectangular grid is described in Campopiano and Glazer, "A Coherent Digital Amplitude and Phase Modulation Scheme," IRE Transactions on Communication Systems, Vol. CS-9, pp. 90-95, March 1962, incorporated herein by reference.
FIG. 1 shows the arrangement of signals in the Campopiano and Glazer constellations and the outer boundaries of those constellations for values of N from 4 through 8. Table I shows the so-called "required signal-to-noise ratio" P (defined in Campopiano et al. and in the Forney/Gallager patent) for the constellations of FIG. 1. Each unit increase in N corresponds to an increase in required signal-to-noise ratio of about a factor of two or 3.0 decibels (dB).
TABLE I ______________________________________ (Campopiano and Glazer) N S --P (dB) ______________________________________ 4 16 10 10.0 5 32 20 13.0 6 64 42 16.2 7 128 82 19.1 8 256 170 22.3 ______________________________________ N = number of bits sent per modulation interval S = number of signals in signal constellation --P= required signalto-noise ratio (dB) = --Pmeasured in decibels
For higher transmission speeds, so-called coded modulation techniques can provide improved resistance to noise and other channel impairments; that is, they can provide a reduction in required signal-to-noise ratio, or a so-called "coding gain".
In such coded systems, to send N bits per modulation interval, signal constellations having more than 2.sup.N signals are used, and coding is used to introduce dependencies between modulation intervals so that the set of available signals from which a signal point can be selected in one modulation interval depends in general on the signal points selected for other modulation intervals.
In one coding technique for getting a coding gain (disclosed in Csajka et al, U.S. Pat. No. 4,077,027 and Ungerboeck, "Channel Coding with Multilevel/Phase Signals," IEEE Transactions on Information Theory, Vol. IT-28, pp. 55-67, January, 1982), the N bits appearing in each modulation interval are individually mapped into signal points selected from a constellation of 2.sup.N+1 signals. The signals in the constellation are organized into subsets such that the minimum distance between two signals belonging to one subset is greater than the minimum distance between any two signals in the constellation. The selection of the signal point for each N input bits is made to depend, in part, on the historical sequence of all previously selected signal points, as represented by the state of a finite state device in the encoder. This so-called trellis coding effectively permits only certain sequences of signal points to be transmitted, and the coded historical information carried by every signal point is exploited at the receiver by a maximum likelihood sequence estimation technique (e.g., one based on the Viterbi algorithm, as described in Forney, "The Viterbi Algorithm," Proceedings of the IEEE, Vol. 61, pp. 268-278, March, 1973, incorporated herein by reference).
A coding gain can also be realized using a block coded modulation system in which blocks of n input bits are sent in m modulation intervals, so that N=n/m bits are sent per modulation interval. For each block, m signal points are selected from a constellation having more than 2.sup.N signals, a process which is equivalent to mapping each block into a code word selected from an available code word set of 2.sup.n code words arranged in 2m-dimensional space (called simply 2m-space), with the 2m coordinates of each code word, taken two at a time, defining the respective pair of coordinates in two-dimensional space of the m signal points to be selected. The code word set from which the code word for any block may be drawn is independent of the signal points selected for any other block. At the receiver, the decisions on which signal points were sent are based on the received signal points for each block (the so-called received word), preferably using maximum likelihood decoding.
One method of block coding involves using a code word set arranged on a finite portion of a densely packed infinite geometrical lattice in 2m-space; see, for example, Conway and Sloane, "Fast Quantizing and Decoding Algorithms for Lattice Quantizers and Codes," IEEE Transactions on Information Theory, Vol. IT-28, pp. 227-232, March 1982, and the references cited therein, incorporated herein by reference. A representative system of this type is disclosed in "Block Coding for Improved Modem Performance," a Canadian contribution (Com XVII-No. 112) to Study Group XVII of the International Telegraph and Telephone Consultative Committee (C.C.I.T.T.), March 1983, incorporated herein by reference, which describes an 8-space code for sending 4 bits per modulaton interval with an asymptotic coding gain of 3.4 dB over the uncoded Campopiano and Glazer 16-signal constellation (defined by the N=4 boundary in FIG. 1).